iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0

第八章,前半講Python類別的各項功能與實作

類別:

把一組相關變數/常數和函式組織在一起的程式碼叫做「類別(class)」 也被稱為「程式物件的規劃藍圖」。類別裡的變數稱為「屬性」、函式則叫做「方法(method)」。

類別裡有兩種特殊的變數類型
1.類別變數:也稱為靜態變數,保存所有物件共用資料,像「單價」和「銷售總數」,用"類別.變數名稱"格式讀取。
2.實體變數:保存物件自己的資料,像「數量」和「是否加辣」。宣告時,名稱前面要加上 self.(代表「物件自己的」意思)。

類別程式的結構:
class 類別名稱:
類別變數

    def __init__(self):
          self.實體變數

    def 方法名稱(self):
           self.實體變數
例:
class Order():
       total = 0
       price = 35
       def __init__(self, amount=1, spicy=False):
              self.amount = amount
              selt.spicy = spicy
              Order.total += amount
       def check(self):
              sum = Order. price * self.amount

              sauce = '加醬' if self.spicy else '不加醬'
              print(f'{self.amount}個肉圓{sauce},共
              {sum}元。')

執行測試:
>>> from shop import Order
>>> order1 = Order (3, True)
>>> order2 = Order (2)
>>> order1.check()
3個肉圓加醬,共105元。
>>> Order.total
5

屬性的存取權限:
Python使用底線來區分,底線加在最前面
沒有底線:代表公有的(public),可供類別外部程式自由存取。
一個底線:代表受保護的(protected),僅供類別內部或者擴充此類別的程式存取。
兩個底線:代表私有的(private),僅限類別內部程式存取


上一篇
Day15 CSV與Google
下一篇
Day17 網路交換格式
系列文
從0開始學PYTHON30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言